home *** CD-ROM | disk | FTP | other *** search
/ Commodore Free 22 / Commodore_Free_Issue_22_2008_Commodore_Computer_Club.d64 / t.music edit 4.1 < prev    next >
Text File  |  2023-02-26  |  9KB  |  326 lines

  1. u
  2.  
  3. TND Creating music with DMC
  4. http://www.redesign.sk/tnd64/
  5.  music_scene.html
  6.  
  7. Created by Richard Bayliss
  8. with Special thanks to Rio/Rattenrudel
  9.  
  10. Final instalment 4.1
  11.  
  12. 2.5.1Options
  13. We can step with CRSR Keys up and down
  14. in Sector Editor. The HOME Key jumps
  15. to first line of sector. SHIFT + [ or
  16. SHIFT + ] will change the current
  17. sector to previous or next sectors.
  18.  
  19. If you want to compose something,
  20. first you will need to set up Commands
  21. like Duration and Sound, Then you are
  22. able to write down notes in the
  23. sectors. Otherwise it will use the
  24. last settings of a sector before.
  25. (------) represents an empty step. If
  26. you want to change all notes to
  27. another pitch value from current
  28. position, then you should push SHIFT +
  29. < or SHIFT + >. All Instruments below
  30. will now transpose up or transpose
  31. down.
  32.  
  33. + key will switch the VOICE ON or OFF,
  34. so that you can listen to your placed
  35. noted. - key will set an empty step
  36. (------). DEL key deletes a line, INST
  37. will insert an empty line instead. CLR
  38. (SHIFT + HOME) will delete the whole
  39. sector.
  40.  
  41. Like in Track Editor - a COPY / PASTE
  42. functionality is integrated in sectors
  43. too. ? Arrow (Copy - part of the
  44. screen flicker in green) and @ (Paste
  45. - part of the screen flicker in red).
  46. Sectors will be copied only to an END!
  47. Command in Tracks (Everything behind
  48. that will be ignored).
  49.  
  50. In DMC7 you are able to trace a sector
  51. by pushing ?. But beware, i noticed
  52. some crashes if we do it to often,
  53. looks like a bug. SHIFT + RETURN will
  54. close the sector editing.
  55.  
  56. 2.5.2Commands
  57. The sector editor allows us to use
  58. different commands:
  59.  
  60. DUR.xxSets the duration for passing
  61. one step (C= + D)
  62. SND.xxSets an instrument number (C= +
  63. S)
  64. GLD.xySlides/glides between two notes
  65. (C= + G)
  66. VOL.0xSets a volume (works if no
  67. Attack or Decay is set) (C= + V)
  68. SWITCHPlayed notes in that section
  69. will not be reset by ADSR (C= + X)
  70.  
  71. -GATE-Set gate for a played note (
  72. key)
  73. END!End of Sector will switch into the
  74. next sector of track (= key)
  75.  
  76. If you are writing your first tune,
  77. you can try to change the duration
  78. time (DUR.xx) before the next note is
  79. played. DUR is a command like SND
  80. etc., which will be noticed by the
  81. play routine - but only interpreted as
  82. a command (not as a step!). By setting
  83. DUR Command it will jump to next note
  84. after waiting of xx Steps. The DUR
  85. value represents the duration between
  86. 2 note-steps.
  87.  
  88. Let's take a look to following
  89. example:
  90.  
  91. 00 ------
  92. 01 DUR.03
  93. 02 D-3
  94. 03 D-4
  95. 04 END!
  96.  
  97. It will do the same like this:
  98.  
  99. 00 ------
  100. 01 DUR.01
  101. 02 D-3
  102. 03 ------
  103. 04 ------
  104. 05 D-4
  105. 06 ------
  106. 07 ------
  107. 08 END!
  108.  
  109. Ok? But the first method has a better
  110. raster timing and is more space
  111. efficient. So you can optimized your
  112. composed code with using DUR command.
  113.  
  114. Using GLD.xy command isn't so simple,
  115. but here a quick example in two ways:
  116.  
  117. 1. Slide from current note:
  118. We are able to slide from a current
  119. playing note to another note. We have
  120. to adjust the GLD.xy parameters with
  121. x=1 and y=speed (0 - none, 1 -
  122. slowest, F - fastest) and we need to
  123. set the destination note. You can try
  124. to play these sectors (01, 02) in a
  125. loop:
  126.  
  127. You will hear a downslide to G-3 (from
  128. B-4) and an up slide to G-3 (from B-2)
  129. in the second sector, but both in
  130. different amounts of speed, and you
  131. also have to watch out how many steps
  132. are between the notes. If you slow
  133. down the speed of slide in the first
  134. sector (instead F e.g. y = 3), you
  135. will notice that the duration of slide
  136. will be execute too affecting the next
  137. note. Then the next note will slide,
  138. which actually shouldn't be slid.
  139.  
  140. 2. Glide between two notes:
  141. The second way is to glide between two
  142. fixed notes. We need to set the source
  143. and destination note after GLD.xy
  144. Command. We have to adjust the GLD.xy
  145. parameters with x=0 and y=speed (0 -
  146. none, 1 - slowest, F - fastest). We
  147. have also pay attention to duration
  148. and speed of glide. If another note is
  149. to be played and the glide isn't
  150. finished, it will influence the
  151. following notes too! The both notes,
  152. which are followed after that GLD
  153. Command will be interpreted together
  154. as one step. The following example
  155. will demonstrate a glide between G-3
  156. and E-5:
  157.  
  158. Volume Command VOL.0x can be used to
  159. control volume in channel independent
  160. from instrument's Sustain level. The
  161. maximum level is F. Volume changes can
  162. only be used for instruments which
  163. don't use Attack and Decay. The last
  164. volume adjustment will be stored
  165. globally for that channel. If you want
  166. to reset volume settings, so that
  167. instruments will use their own ADSR,
  168. you have to set Volume parameter back
  169. to 00.
  170.  
  171. SWITCH Command won't reset the ADSR
  172. for following notes. It can be used in
  173. two ways, If we set one SWITCH
  174. command, then every following note
  175. will use the current ADSR setting
  176. until a further SWITCH or END -
  177. Command is issued. Then the ADSR will
  178. be reset, Take a look at the two
  179. examples:
  180.  
  181. GATE Command will activate the GATE of
  182. a played instrument, It should only
  183. set after a played note.
  184.  
  185. END Command have to be set in every
  186. sector and represents the mark of
  187. ending a sequence. It will define the
  188. total length of your sector too.
  189.  
  190. 2.5.3Time Control
  191. So the main question is: How can i
  192. synchronize all three channels with
  193. different played sectors. Therefore
  194. the total duration time is necessary,
  195. If your "tune speed" is 00 and if you
  196. setup your editor as follow, you
  197. should find following values on
  198. screen: L: 0000 0008
  199.  
  200. The first 4 numbers represents the
  201. current played position. The Second 4
  202. numbers represents the total duration
  203. time of a sector. It should be same in
  204. all the other sectors (or a multiple
  205. or halve of that). In the example
  206. above you can calculate the sum for
  207. every note: DUR04+DUR02+DUR02 = 8.
  208. Notice that this number is always
  209. hexadecimal! After Editing the number
  210. it'll be refresh if you open again the
  211. sector or you start the play routine.
  212.  
  213. Take care to choose a good divisible
  214. value, You'll understand it if you try
  215. drums. Notice that at the end of a
  216. sequence should stand an -END-, so
  217. that the player knows that you want
  218. change to the next sector in track.
  219. END, SND, DUR ... are commands, which
  220. are only read in from player and so
  221. they shouldn't stand in front of an
  222. END. These commands are not counted!
  223. Notes, GATE and --- are interpreted as
  224. full played notes, which are counted
  225. in a total duration of a sector.
  226.  
  227. In menu setup you'll find "tune
  228. setup". Here you can adjust the whole
  229. song speed. What does it means? A
  230. higher value will halve the speed. So
  231. that you can calculate the total
  232. duration time as follows: L:0000 XXXX
  233. = (tune SPD + 1)* all DURs (for
  234. Notes/Gate/---)
  235.  
  236. 2.5.4Global Filter and Pulse
  237. There is an easy way to create cool
  238. Filter Effects and Low Frequency
  239. Modulation for sequences, which are
  240. using filter.
  241.  
  242. First, you have to create one
  243. instrument in Sound Editor. Choose the
  244. first instrument number. There you
  245. have to choose a filter number (F) and
  246. activate the filter (FX: 20) for that
  247. instrument. Then go in Filter Editor,
  248. choose that number and define these
  249. parameters for testing that:
  250.  
  251. F 3 09 00 00
  252. 01 00 00 00 00 FF
  253. 25 01 01 01 01 25
  254.  
  255. All right, now go back into the Sound
  256. Editor again. Copy your
  257. instrument-settings on a free place
  258. (another instr. number = 2) and paste
  259. your buffer. Now set FX: 22 - that
  260. means NO FILTER RESET. Go into Sector
  261. editor and put following sequence:
  262.  
  263. 00 DUR.03
  264. 01 SND.01;FX: 20 you have to reset
  265. first the filter settings ;)
  266. 02 C-1
  267. 03 SND.02;FX: 22 NO FILTER RES to
  268. start global filter for next notes
  269. 04 C-2
  270. 05 C-2
  271. 06 C-1
  272. 07 C-2
  273. 08 C-2
  274. 09 C-1
  275. 0A C-2
  276. 0B END!
  277.  
  278. Ok, so you can create LFO envelops for
  279. all following notes, the filter
  280. envelopes are transferable on other
  281. instrument, which use these filter
  282. settings too. Notice that all these
  283. setting are different for both SIDs
  284. (6581 /8580). You have to choose
  285. higher values on the 6581, otherwise
  286. the filtered instruments sound to
  287. deep, pay attention to set filtered
  288. sounds only in one channel!
  289.  
  290. Ok, you can try these settings for
  291. Pulse instruments too. You only have
  292. to choose an instrument with Pulse
  293. Wave (41) with defined SPEED values
  294. and set FX to NO PULS RES instead NO
  295. FILTER RES.
  296.  
  297. 2.6Quick Recaps and Examples
  298. Familiarize yourself with the sound
  299. tables, now it is time to do some
  300. serious work on those tables. For a
  301. start off re-init DMC and pick a
  302. normal instrument, which can be the
  303. main instrument for any tune, that you
  304. compose in future. Because you're at
  305. sound #$00, enter the following:
  306.  
  307. After setup wavetable press SHIFT +
  308. RETURN then press SPACEBAR to test the
  309. sound. There, we are, a perfect
  310. working sound. The octave of your test
  311. sound can be incremented and decrement
  312. by pressing SHIFT and '+' or SHIFT and
  313. '-' (depending on which way you would
  314. like your sounds' octave to go).
  315.  
  316. Okay, now press the UP ARROW key on
  317. your C64 to put the current sound
  318. intro memory buffer. Then press '@' to
  319. paste to the next instrument. Now all
  320. you need to do is add a filter. The
  321. next diagram shows how a filter can be
  322. turned on.
  323.  
  324.          Continued in 4.2
  325.  
  326.